2444248224822482224842222422442424248242488222242482224842484222242242424824248222484248422224224242482424842242244244222248244822448442224484424222482448224482244842422442422248244822448224484242244242242842422242842482244842242442422882242822428224284248224482288422424424224282242822428424822448228842242442442242242442422482422422482424822484424224844424224822248222482424822484224844222444242248222482224824248224842248442224442442222242222242222242222244442444422228222244222244442422222422222444442222822224444422222424224242224444242224242224242224444422222424224242224444242224242224242224444422222424224242244244242224242228444222224224242242244442242242242242242244444222224224242242244442242242242242242244444222224224242242442442242242242284442222242224422242444422242422242422242444442222242224422242444422242422242422242444442222242224422244424422242422242844422442242242242424242822442242444244824422424224282242422424442448244242424284424442842424242424284424442444244824424242424242844244424442448244224444424442448244242424242428224244428424242424242822424442444244824424242424242822424442444244824422442244444244424442448244242424242428224244428424242424242822424442444244824424242424242822424442444244824424224242242422242428242482422222422244222224222224244222442422242422242422242424224222442224242224242224242424222224242242422242422242422424242422222424224242224242224242242424242222242422424222424222442424222224422244222244222244222424242422222442224422224422224422242424242222244222442222442222442424222224224242242242242242242424242422222422424224224224224224242424242222242242422422422422442444444428424444844444284244448444442842444488444284244448444442842444484444248244444844444284244448844428424444844444284244448444424824444484444428424444884442842444484444428424444844424842248422488224442488422282484224842248822228224442488248422484224882222822444248824842248444842448424484224844484244842448422484448424484244842428824242428424488224242884242842428424484288424284242842448428842482822442482424844248442482424824248442484424824248242484424842248224822248422224224424242482424882222424822248424844222422244242224248242484242224242422248424844222422424248242484242224242442242244244222248244822448442224484224422248244822448224484224224242422248244822448224484224224242422428422422242842482244842224242244228822428224282242842482244822884222424242422428224282242842482244822884222424242442242242442422482422242248242482248442422484422442248222482224824248224842248442222442424224822248222482424822484224844222244242442222242222242222242222244442244422228222244222244442422222422222444442222822224444422222424224242224444242224242224242224444422222424224242224444242224242224242224444422222424224242244244242224242228444222224224242242244442242242242242242244444222224224242242244442242242242242242244444222224224242242442442242242242284442222242224422242444422242422242422242444442222242224422242444422242422242422242444442222242224422244424422242422242844424424242424242822424442444244824424242424242822424442444244824422444444248244242424242428224244428424242424242822424442444244842424242424242822424442444244842424242424242844244428424242424242844244424442448244242424242428442444244424482442244224444424442444244824424242424242822424442842424242424282242444244424482442424242424282242444244424482442484248422488222282244442422484424828222444482484224842248822228224442488248282224444242224224422442244242248444824422444242448244242448484422484448244224424424484244824242244444224844482442244244244842448242422444442428824242428444242448822424844288424284242824242442442448428824224244444242842428242424424424484288242242444424222422442242424244248282244248244424248424244248448442482424822422444244248442484242224444442482424822422444244248442484242224444442248422488224442488422282482422222422244222224222224244222444444428424444844444284244448444244424482444448444442842444488444284244448444442842444484444428424444884442842444484444428424444844442482444448444442842444488444284244448444442842444484422482248222484222242244242424824248822224248222484248442224222442422242482424842422242424222484248442224224242482424842422242424422422442442222482448224484422244842244222482448224482244842242242424222482448224482244842242242424224284224222428424822448422242422442288224282242822428424822448228842224242424224282242822428424822448228842224242424422422424424224824222422482424822484424224844224422482224822248242482248422484422224424242248222482224824248224842248442222442424422222422222422222422222444422444222282222442222444424222224222224444422228222244444222224242242422244442422242422242422244444222224242242422244442422242422242422244444222224242242422442442422242422284442222242242422422444422422422422422422444442222242242422422444422422422422422422444442222242242422424424422422422422844422222422244222424444222424222424222424444422222422244222424444222424222424222424444422222422244222444244222424222428444244242424242428224244424442448244242424242428224244424442448244224422444444248244242424242428224244428424242424242822424442444244842424242424242822424442444244842422442244444424824424242424242822424442842424242424282242444244424484242424242424282242444244424484242424242424284424442842424242424284424442444244824424242424242844244424442448244248424842248822228224444242248442482822244448248422484224882222822444248824828222444424222422442244224424224844482442244424244824424244848442248444824422442442448424482424224444422484448244224424424484244824242244444242882424242844424244882242484428842428424282424244244244842882422424444424284242824242442442448428824224244442422242244224242424424828224424824442424842424424844844248242482242244424424844248424222444444248242482242244424424844248424222444444224842248822444248842228248242222242224422222422222424422244444442842444484444428424444844424442444244824444484444428424444884442842444484444428424444844424442444244824444484444428424444884442842444484444428424444844444284244448844428424444844444284244448442222222222422422242224222442222242242224222422244222224224222422244222222422422242224224422222242242224222422442222224224222422442222222422422242224244222222242242224222424422222224224222424422422422242442424242422242442424242422242442424242422242224222422242242224422822242224224422822242224224422822422244244224422422244244224422422244244224422422242224244242424242224844824482448424228242442444824422244444482448244842422824444844482442224442448244842422824444844482442224444248242424882444482242442848424842484422282444488482242442424842484422282444488482242442442844424428444844242844488442844284448488442428444428442844484884424284422222222442224222442444824424448242244842224448484444824482222242244844484442248444482448222224224484448444224844244824484448444824222242244224422224424244244242424282242444244824424242428224244424482442424242844244428424242424242844244424442448244242424242428442444244424482442244444244424482442424242424282242444284242424242428224244424442448244242424242428224244424442448244224422444442444244424482442424242424282242444284242424242428224244424442448244242424242428224244424442448242448242224244224422442224244224422442224244224422442242224222242242224422822422242224422822422242224422822422244242424242422244242424242422244242424242422242224242424242224222424242424222422242424242422242224242424244824242224242224242222842422444242282422422422422442424222424222424222284442422824224224224224424242224242248444242282422422442244844484224222284242242448424484424224284224484448228442448424484284242482424842442228424448248842442242842424824248424422284244482488424422428424248242484244248424448248828442442824428424242284244482444842424242842442824428424242284244482444842424242842442824428424244842444824448284444444282444844442842444484444428424444844444284244448844428424444844444284244448444424824444484444428424444884442842444484444428424444844442482444448444442842444488444284244448444442842444484422484482448244842422824244244482442224444448244824484242282444484448244222444244824484242282444484448244222444424824242488244448224244284842484248442228244448848224244242484248442228244448848224244244284442442844484424284448844284428444848844242844442844284448488442428442222222244222422244244482442444824224484222444848444482448222224224484448444224844448244822222422448444844422484424482448444844482422224224422442222442424424424242424242822424442444244824424242424242822424442444244824422444444248244242424242428224244428424242424242822424442444244842424242424242822424442444244842424242424242844244428424242424242844244424442448244242424242428442444244424482442244224444424442444244824424242424242822424442842424242424282242444244424482442424242424282242444244424482424482448224482244842242242244422444244824242248442448224482244842242244224424484244824242244442244822448422422442244244842448242422444424222422224224222442282242482422242484422424448282284844442424824248424222442242444824448428224444244284244224428444224448424242482424882442824428224424424244482488424242444242442824428224424424244482488424242444242422242224242424244824242424482444224484242424484482424482244822242444242448424484424224444242448224482224244424244842448442422444424224482244842448424484242224242224242224242222842422444242282422242422242422242422228444242282422242422242422484442422824224224224442242242222842422442422442422442422428442242244422228444242244242242844242224244242442228442442242442242442242844242224244242442228442442242442242442242844242224244242442484424422424422284442422242424424242284424242424242424242428442422242424424242284424242424242424242428442422242424424244844242424242422844444442824448444428424444844444284244448444244424482444448444442842444488444284244448444442842444484444428424444884442842444484444428424444844442482444448444442842444488444284244448444442842444484422484482448244842422824244244482442224444448244824484242282444484448244222444244824484242282444484448244222444424824242488244448224244284842484248442228244448848224244242484248442228244448848224244244284442442844484424284448844284428444848844242844442844284448488442428442222222244222422244244482442444824224484222444848444482448222224224484448444224844448244822222422448444844422484424482448444844482422224224422442222442424424424242424242822424442444244824424242424242822424442444244824422442244444424824424242424242822424442842424242424282242444244424484242424242424282242444244424484242244224444442482442424242424282242444284242424242428224244424442448424242424242428224244424442448424242424242428442444284242424242428442444244424482442424242424284424442444244824244824482244822448422422422444224442448242422484424482244822448422422442244244842448242422444422448224484224224422442448424482424224444242224222242242224422822424824222424844224244482822848444424248242484242224422424448244484282244442442842442244284442244484242424824248824428244282244244242444824884242424442424428244282244244242444824884242424442424222422242424242448242424244824442244842424244844824244822448222424442424484244844242244442424482244822242444242448424484424224444242244822448424484244842422242422242422242422228424224442422824222424222424222424222284442422824222424222424224844424228242242242244422422422228424224424224424224424224284422422444222284442422442422428442422242442424422284424422424422424422428442422242442424422284424422424422424422428442422242442424424844244224244222844424222424244242422844242424242424242424284424222424244242422844242424242424242424284424222424244242448442424242424228444444428244484444284244448444442842444484442444244424482444448444442842444488444284244448444442842444484442444244424482444448444442842444488444284244448444442842444484444428424444884442842444484444428424444844242842424224242424224242424242244242242424442824242242422424424282422424244424224242242442428242242424442224224244244422424442424422444244244424224244424244242442224424442422424442424424244222442444242422424224242424424282424224242222422424242442428242422424222242242424244242822422422442444242242444242424442424444242422424442424424242242444424242242444242442424224244442242824242242422424224424242222428442842428424282242844284242842428224284428424284242822428224282242824482442828282242822428244824428282824228242282422824482424824248242282422824228244824248242482422824228442824248242484224424242428224244424482442242422428224242242444244824424242428442444284242424242428442444244424482442424242424284424442444244824422444442444244824424242424242822424442842424242424282242444244424482442424242424282242444244424482442244224444424442444244824424242424242822424442842424242424282242444244424482442424242424282242444244424482442422424224242224242448422422422422422422422422242424242224422428224242224242442242242242242442242822424222424244224224224224244224282242442424222424244242424242424222424242442422242424424242424242424244242224244242442242442242242242424424222424424244224244224224224242442422242442424422424422424424242242242244422442422442222442424424224224224442244242244222244242442422422422444224424224422444244244442842444484444242824244244824444224844442448244442428242442448284424282424424482444422482244442484244422484444244824444242824244244828442428242442448244442248224444248424442248444424482444424282424424482844242824244244824428822882288428842882288228842884288228822884288428822882288428842882288488248824882288488248824882288488248824882828282828482848282828282848284828282828284828482882288228842884288228822884288428822882288428842428242822428224282242824484422424282424244424242822428224282242822248248224242842428242424442224282242842428424282424244422242242442442242844282442824424428444222428442824428244282244244422242844282442824428224424442424224242242424244242822422842422244842422424842822424824228242282242242422424824248242242244244242824244242822428424424284444224282242822428424284224244442242822428224284242842242444422242822428424842428424282428222424242424224424422224284428424284242822428442842428424282242844284242842428224282242822428244824428282822428224282448244282828242282422824228244824248242482422824228242282448242482424824228242284428242482424842442424242424282242444244424482442424242424282242444244424482442244444424824424242424242822424442842424242424282242444244424484242424242424282242444244424484242424242424284424442842424242424284424442444244824424242424242844244424442448244224422444442444244424482442424242424282242444284242424242428224244424442448244242424242428224244424442448242448288228822884222424224442444288242242484428822882288422242442244288428824224244442288228842224244224428842882422424444222422244422424242422884882424242442488242424884842288488242424424248824882242424444228848824242442424882488224242444428284224224422428282848422824444284828282828422422442242848284822282444422422242442224422442882422442882444228842244288448428822882222444424288428842224244444288228822224444242884288422242444442288228842884288282828282848284822242222242422424224222442442224444442842444484444428424444844424442448244444844444284244448844428424444844444284244448444442842444488444284244448444442842444484444248244444844444284244448844428424444844444284244448442428242822428224282242824484422424282424244424242822428224282242822248248224242842428242424442224282242842428424282424244422242242442442242844282442824424428444222428442824428244282244244422242844282442824428224424442424224242242424244242822422842422244842422424842822424824228242282242242422424824248242242244244242824244242822428424424284444224282242822428424284224244442242822428224284242842242444422242822428424842428424282428222424242424224424422224284428424284242822428442842428424282242844284242842428224282242822428244824428282822428224282448244282828242282422824228244824248242482422824228242282448242482424824228242284428242482424842442424242424282242444244424482442424242424282242444244424482442244224444442482442424242424282242444284242424242428224244424442448424242424242428224244424442448424224422444444248244242424242428224244428424242424242822424442444244842424242424242822424442444244842424242424242844244428424242424242844244424442448244242424242428442444244424482424482882288228842224242244424442882422424844288228822884222424422442884288242242444422882288422242442244288428824224244442224222444224242424228848824242424424882424248848422884882424244242488248822424244442288488242424424248824882242424444282842242244224282828484228244442848282828284224224422428482848222824444224222424422244224428824224428824442288422442884484288228822224444242884288422242444442882288222244442428842884222424444422882288428842882828282828482848222422222424224242242224424422244444428424444844444284244448444244424442448244444844444284244448844428424444844444284244448444244424442448244444844444284244448844428424444844444284244448444442842444488444284244448444442842444484422222222224224222422242224422222422422242224222442222242242224222442222224224222422242244222222422422242224224422222242242224224422222224224222422242442222222422422242224244222222242242224244222422422244244224422422244244224422422244244224422422242442424242422242442424242422242442424242422242224222424422442282224222422242442244228222422242442244228248242244222442244222442244242442242422444248224422244222444224822424224442442224422244422482242422444242222222244242224222444222444242222422424242422424244424422244424222242242424424242242444244222444242222422424244242422424442442224424442244422444424422244244422444224422244442442224424442244422442224444244224222442242422442244222444242284224242242222424224422444228222444242242422422224242244224442282224442248222224422442242424422422482448242482424822248244824248242482224824482424824248222482224822248228242242822448228822248222482244822882224822248224482288224282242822448224482242822428224482244822248424242428224244424482422482424282244822248442448244484224284242844428224484882248244824242842248444844244824224824482424284224844484424482422248444424822448424482444482242844284242822224484882248244824242822224844484424482422482448242428222248444844244824222484248444224484448424482422428442842428222244848822482448242428222248444844244824224824482424282222484448442448242484224222442424242424222442424242424222442424242424222422244242424242422242224222442424242424222422242224424242424242224222422244242424242422242442244224422242442244224422242442244224422422242424224422822422242224242422442282242224222424242244228248424222424222424222422422442222444222482224422224424242422242422244422248222442222442424242224242224442224822244422422484448442484424842422244242422484448442484424842422244242422484448442484424844422422484224842448428842242244242422484224842448428842242244242422484224842448428844422424284242842448424484222424424242428424284244842448442424442444428424444844442428242442448244442248444424482444424282424424482844242824244244824444224822444424842444224844442448244442428242442448284424282424424482444422482244442484244422484444244824444242824244244828442428242442448244248224822248222482224822448424242482242244424424822248222482224822224824822424824248224224442422482224824248242482242244424222222224424222422244224824482222242224482242224482442422482448222224222448224482224244424224824482222242224482244822242444242428242442428224482422444424288224282242822448228822224444242428224282244822882222444424422422244224242244224422244424228248224224224844224248244228248244422482224822222424224248242482422244422248222482424842482424822482222244224422424244224224824482424824248222482448242482424822248244824248242482224822248222482282422428222484242424242428224244424442448242248244824242822224844484424482422248444424824248824242482242844284242822224484882248244824242822224844484424484222482448242428222248444844244842224284428424284224484882248244824242842248444844244824224824482424284224844484424482422248424844422448444842448242242844284242822224484882248244824242822224844484424482422482448242428222248444844244824248424842248422484422224422444244424842422244844248422484224844222244422442484424842422244444224842248442222444224424844248424222444442224222442424242424224844484242244244244842424244844842248444842422444242448424484224224444422484448424224442424484244842242244444242844242424284424424484422424484288424284242842242444242448428842224244444242842428422424442424484288422242444442242224242422442282484222422484244224248442282488444424842248424222424422424844248442222844442248422484424844248422224222224422244222422424422244444442842444484444428424444844424442448244444844444284244448844428424444844444284244448444442842444488444284244448444442842444484444248244444844444284244448844428424444844444284244448442482248222482224822248224484242424822422444244248222482224822248222248248224248242482242244424224822248242482424822422444242222222244242224222442248244822222422244822422244824424224824482222242224482244822242444242248244822222422244822448222424442424282424424282244824224444242882242822428224482288222244442424282242822448228822224444244224222442242422442244222444242282482242242248442242482442282482444224822248222224242242482424824222444222482224824248424824248224822222442244224242442242248244824248242482224824482424824248222482448242482424822248222482224822824224282224842424242424282242444244424482422482448242428222248444844244824222484248444242482424822428442842428222244848822482448242428222248444844244842224824482424282222484448442448422224842484442424824248224284428424282222448488224824482424282222484448442448422248244824242822224844484424484222428442842428422448488224824482424284224844484424482422482448242428422484448442448242484248422484224844222244224442444248424222448442484224842248442222444224424844248424222444442248422484422224442244248442484242224444422242224424242424242248444842422442442448424242448448422484448424224442424484244842242244444224844484242244424244842448422422444442428442424242844244244844224244842884242842428422424442424484288422242444442428424284224244424244842884222424444422422242424224422824842224224842442242484422824884444248422484242224244224248442484422228444422484224844248442484222242222244222442224224244222444444428424444844444284244448444244424442448244444844444284244448844428424444844444284244448444244424442448244444844444284244448844428424444844444284244448444442842444488444284244448444442842444484422482248222484248424824484428422484224842248444822248424842248422484224844482224842484224842248444822248244824248242482424844482224824482424824248242484448222482448242482424844482224822248222482448224482288222482224822248244822448228822248222482448224482288224282242822428244822448224482244844482242822428224282448224482244822448444822428224282448224482244844484484482448288288244844484884424842488284448848442844288284448488448244828284484448484844824482448282844844484448484842484248424882844488484428442844288284448488448244824482828448444844484848448244824482828448444844484848424842484248828444884844284428442882844484884482448244828284484448444848484482448244828284484448444848484482448244842484248242482424824248424284424882482424824248442488248242482424844248824842248444844248442484224844484424844248422484448442484424842248422484244842884224842248424484288422484224842448428842428424284244842448424284242842448424484242842428424484244824824222242224222242222422442424422822242222422224222244244442244222822282224444242222242222242222442444224422224422228222444442224222424442244228424222224422244224442442242422442224242248444424222224422244224424442242422242422242422444444424222224422244224424442242422242422242422444444424222224242242424442242242242242484444242222242422424244242422422422422422424444444242222242422424244242422422422422422424444444242222242242422444422422242422244844442422222422424224442424222424222424222444444442422222422424224442424222424222424222444444442422222422244222224222224244222424242422424442444442442442444248248248284244224422442482444244424442842442244224424824442444244428422444442244228228244244242242242224224422424224242242422444244244442444244424482428242424242424484424442444244822424242424244844248242424242424242244228442228222822228222282244422822228422242422424224424842228222282222822228224842228422242422424224424422224222242244242242422824822228422422224422824224242282422422424244822228422422224222244228242282422424224242244248222284224222242222442282422824224242242422442482222824282242822424224242448222282428224282242422424242244248222282428224282242422424242244248222282248222482224422424244822228224822248222442224424224424822228224822248222442224424224424822228222282248422284222422224222242222422224422244442442284444284244228224424824442282244248244242424242424422244224422842444282244228424442822444842444282244228424442822442284244428242222422242224222422244244228222422224222242222442444224422282228222444424222224222224222244244422442222442222822244444222422242444224422842422222442224422444244224242244222424224844442422222442224422442444224242224242224242244444442422222442224422442444224242224242224242244444442422222424224242444224224224224248444424222224242242424424242242242242242242444444424222224242242424424242242242242242242444444424222224224242244442242224242224484444242222242242422444242422242422242422244444444242222242242422444242422242422242422244444444442228222822228222282244422822228422242422424224424842228222282222822228224842228422242422424224424422224222242244242242422824822228422422224422824224242282422422424244822228422422224222244228242282422424224242244248222284224222242222442282422824224242242422442482222824282242822424224242448222282428224282242422424242244248222282428224282242422424242244248222282248222482224422424244822228224822248222442224424224424822228224822248222442224424224424822228222282248422284222422224222242222422224422244442244224422824442842442284444284244228224424824442282244248244422844442842442282244248244422822442482442424242442224422442284244428224422842444282244484244428224422842444282244228424442824222242224222422242224424422822242222422224222244244422442228222822244442422222422222422224424442244222244222282224444422242224244422442284242222244222442244424422424224422242422484444242222244222442244244422424222424222424224444444242222244222442244244422424222424222424224444444242222242422424244422422422422424844442422222424224242442424224224224224224244444442422222424224242442424224224224224224244444442422222422424224444224222424222448444424222224224242244424242224242224242224444444424222224224242244424242224242224242224444444444222822282222822228224442282222842224242242422442484222822228222282222822484222842224242242422442442222422224224424224242282482222842242222442282422424228242242242424482222842242222422224422824228242242422424224424822228422422224222244228242282422424224242244248222282428224282242422424244822228242822428224242242424224424822228242822428224242242424224424822228224822248222442242424482222822482224822244222442422442482222822482224822244222442422442482222822228224842228422244224422442282444284244228444428424422822442482444228224424824244224422824442842442284444284244228224424824442282244248244422844442842442282244248244422822442482444228224424824442282244248242444248224822482248228422844248244224422424424822482248424842482248224842484248224822484424248424822482248224222422422424842482248224842484248224822484248424824222422244228224282422242824482822882428242824482448248224424822484248424822482248424842482248224842484224822484482284424842484428428424824242242422424242422424242424242424224422242442424242422242442424242422248448224822484228424842484248424844282248448424842482428242824282248422824824822482248244844824842484248424482482248224824482484248424822482248244824842484224844824482442424482482248224822248224824424244242422424224242242242442224248224822482248448448424842484248448242482248224822484484248424822482248224844842484248242242422424224224244224422422242224222424442244224224822482248228422484444882882884882442224422244224882882884884882882884884882882884242488488288288224222442488488288288224222224224222488488288288488488828244282884824242848828828848848882242488288488488288288488488288288488428828848848882882884884824222242244224242242422424224442224224422424224242242422444222422442242422424228422242222422224222442244222822224222242224422442228222422224242424224242242424442242222424242422424224242444224222242424242242428422444248224822484248244242482248224842484248224822484248424822482248442424842482248224822422242242242484248224822484248424822482248424842482422242224422822428242224282448282288242824282448244824822442482248424842482248224842484248224822484248422482248424842482422242442424242422242442424242422242442424242422242224222422242242224222424424242424224222442442244224222422242222424222224222422242224424422442242224222422244244224422422244244224422422242224222424442244224222422242224244422442244444882882884882442224422244224882882884884882882884884882882884242488488288288224222442488488288288224222224224222488488288288488488828244282884824242848828828848848882242488288488488288288488488288288488428828848848882882884884824222242244224242242422424224442224224422424224242242422444222422442242422424228422242222422224222442244222822224222242224422442228222422224242424224242242424442242222424242422424224242444224222242424242242428422444248224822484248244242482248224842484248224822484248424822482248442424842482248224822422242242242484248224822484248424822482248424842482422242224422822428242224282448282288242824282448244824822442482248424842482248224842484248224822484248422482248424842482422242442424242422242442424242422242442424242422242224222422242242224222424424242424224222442442244224222422242222424222224222422242224424422442242224222422244244224422422244244224422422242224244422442242224222424442244224444488288288488244222442224422488288288488488288288488488288288424248848828828822422244248848828828822422222422422248848828828848848882824428288482424284882882884884888224248828848848828828848848828828848842882884884888288288488484422442244244428424422844442842442282244248244422822442482424422442444284244228444428424422822442482444228224424824442284444284244228224424824442282244248244422822442482444228224424824424442442424424244242844244442844244242442424424284424444244442824244242442428442444424444282424424284244424444282424424244242842444244442444428242442424424284244424444244442824244242442428424442444424444284224424442284424422448244422444224442284424482444224442244422844244824422422242424224422822422242224242422442284244222424244244422424444248242442428442444428428242824284428828242824284428828242824284428828422844844284428422844844284428444448424842484448424242444244842484248444844484242424244248424844484448424242424424842484422444844484224242484248422242444448444842484248422242422444844484248424842224242244484448442842442428444842244288442844284448488442844284448488448424842484448848424842224448444844248424844484448422422224242424224242242422424442222424242422424224242242444222242424242242422428422224224422424224242242424442222422442242422424224242444222242244224242242428422224222242222422442224422282222422224224422244222824244424424244242442428442444428442442424424244242844244442444428242442424424284424444244442824244242842444244442824244242442428424442444424444282424424244242842444244442444428242442424424284244424444244442842244244422844244224482444224442244422844244824442244422444228442448244224222424242244228224222422242424224422842442224242442444224244442482424424284424444284282428242844288282428242844288282428242844288284228448442844284228448442844284444484248424844484242424442448424842484448444842424242442484248444844484242424244248424844224448444842242424842484222424444484448424842484222424224448444842484248422242422444844484428424424284448422442884428442844484884428442844484884484248424844488484248422244484448442484248444844484224222242424242242422424224244422224242424224242242422424442222424242422424224284222242244224242242422424244422224224422424224242242424442222422442242422424284222242222422224224422244222822224222242244222442228222222242224424242424242224424242424242224424242424242224222442424242424222422242224424242424242224222422244242424242422242224222442424242424222424422442244222424422442244222424422442244224222424242244228224222422242424224422822422242224242422442282242224222242424224242242424442222424242242422424224242424422242424224242242422424242442224222242422424242242422242422242222422224244424242242422224222242222424224242422424222242222422224242242424224242222422442224422244222242244222442224422224224422244222442224222244224242242422422224222244224242242444224422442444284244228444428424422822442482444228224424824244224424442842442284444284244228224424824442282244248244422844442842442282244248244422822442482444228224424824442282244248242248448244842422824244844484448244824484242282444484448244824484242282444484448424842488244448848424842484422282444488484248424844222824444884844284442442844484424284448844284428444848844242844442844284448488442428444482442444824484448484444824482448444844422484444824482448444844422484424482448444844484482448244824482884428444884824482448244828844488482448244828844488484248424842482884448488424842484248288444848842484248288444848844284428442828844484448444848844284428442828844484448444848844284428288444844484882248222484248424842482448242822428224282242842482448424842484242224242228444442228422242422242422242422282244442228422242422242422242422282244442228422244222244422822444242244242282444422224422224442282244424224424224424228244442222442424424284444224244224282444422224424244242822444224244224244224282444422224424244242822444224244224244224282444422224422444224844442224442224824444222244224442248224442224442224442224824444222244224442248224442224442224442224824424248242482244824482424824248242482424824248242484248422484224842248244282448224482244822448224482244842222442242422424228244442284224242242422424228244442284224242242422424228244442284224422244222824444224822442224422244222824444224822442224422244222824444224822442224442442424424284444222444244242442424424284444222444244242442424424284444222442444224442248444422244244422444224442248444422244244422444224442248444422244222424222424222844444222842224242224242224242228224444222842224242224242224242228224444222842224422224442282244424224424228244442222442222444228224442422442422442422824444222244242442428444422424422428244442222442424424282244422424422424422428244442222442424424282244422424422424422428244442222442244422484444222444222482444422224422444224822444222444222444222482444422224422444224822444222444222444222482444222244224242242422824444228422424224242242422824444228422424224242242422824444228422442224422282444422482244222442224422282444422482244222442224422282444422482244222444244242442428444422244424424244242442428444422244424424244242442428444422244244422444224844442224424442244422444224844442224424442244422444224844442224422242422242422284444422284222424222424222424222822444422284222424222424222424222822444422284222442222444228224442422442422824444222244222244422822444242244242244242282444422224424244242844442242442242824444222244242442428224442242442242442242824444222244242442428224442242442242442242824444222244224442248444422244422248244442222442244422482244422244422244422248244442222442244422482244422244422244422248244248822242422422422842284228422842428242422422422422822228222284228242228228222424242422424224242242422424244228222422242224224244422822242224224244422822422244244224422442244224444222442442244224422442244442224424422442244224444222424424242424242442244442224244242424242424422444422242442424242442244444222442224442244228244444444484244244244284444448482282228222842822482248242822282228222842822482248222824822482248222822282228428224822482228222822284282248224822284282428242822282482248224822282228222822282228224822482228222822482248222822282428242822282482248224822282228224822482228222822482244244424424244242442424422484424482442424424244224844244824442244422444224424244224842444428442244422444224424244224842444428442244422444228424444284424244242442424242442248424444248424244242442424242442248424444248424244242442244422842444424842424242424224844844228224422424244828828824482448488444828824484884448288244848844482882448488444828824484884448288244848844482882448488444828824484884448288244848844482882448488444828824484884448288244848844482882448488444824484242424224482248222482448244842484248424242422424224242242422424224242822822282228224822482228222822482248222824822482248222822282248224822282228224822482228428242824282228248224822482228222822482248222822282248224822282228242824282228248224822482228222822482248222822282248224424442442424424244242442424422484424482442424424244242442248442448244422444224442244242442248424444284422444224442244242442248424444284422444224442244422842444428442424424244242424244224842444424842424424244242424244224842444424842424424244224442284244442484242424224242242422424228444242824224242242422844424282424224242242422422844244242824224242242284424424282424442842284484248424842284228424842484282428242844284428242824284428442824282428442844282428242844284428242824284428442824282428442844282428242844284428242824284428442824282428442844282428242844284428242824284428442424242422424442424424244282424224242242444242442424424244282424242242422842424424282424224242242422822242442428242422424224242282224244242824242242444242442424822442422424442424424244242482424242242444242442424424248242424224242282442424424248224424224242242422842424244242442424822442422424224242282224242442424424248242424224242242422822242424424244242482424244424442244444442444424444224442244444442444424444242442424844424444284424244242442424822442444428442424424244242482244244442844244242442844424444248424424244242442822442444424842442424424244282244244442484244242442824242444424444244242442424428444244442444424424244242442822442444424444244242442424428224424444244442424242422424442424424244282424224242242444242442424424244282424242242422842424424282424224242242422822242442428242422424224242282224244242824242242422824424424244282424242242422424228424244242442424428224424224242242422822242442424424244282424242242422424228222424424244242442824242422424442424424248224424224244424244242442424824242422424442424424244242482424244424442244444442444424444224442244444442444424444242442424844424444284424244242442424822442444428442424424244242482244244442844242442424822442444424444242442424424248444244442444424244242442424822442444424444242442424424248224424444244442442424428444244442484244242442424428224424444248424424244242442822442444424842244442444244444448442444244444448444424824444488442482444448844248244444884244424424244242442428442448244424244242442424242842444424842424424244242442824244442484242442424448424444248424242424224244424244242442844422424224244424244242442424428444242242444242442424844424224242242444242442424424248444242242422842424244242484442422424224242284242424424244242484442422424224242284242424424244242484442422424224242284242424424244242484442422424228424242442424844424224242242422842424244242442424844424224242242422842424244242442424844424224242242422842424244242442424844424442842284484248424842284228424842484282428242844284428242824284428442824282428442844282428242844284428242824284428442824282428442844282428242844284428242824284428442824282428442844282428242844284428242824284428442424242422424442424424244282424224242242444242442424424244282424242242422842424424282424224242242422822242442428242422424224242282224244242824242242444242442424822442422424442424424244242482424242242444242442424424248242424224242282442424424248224424224242242422842424244242442424822442422424224242282224242442424424248242424224242242422822242424424244242482424244424442244444442444424444224442244444442444424444242442424844424444284424244242442424822442444428442424424244242482244244442844244242442844424444248424424244242442822442444424842442424424244282244244442484244242442824242444424444244242442424428444244442444424424244242442822442444424444244242442424428224424444244442424242422424442424424244282424224242242444242442424424244282424242242422842424424282424224242242422822242442428242422424224242282224244242824242242422824424424244282424242242422424228424244242442424428224424224242242422822242442424424244282424242242422424228222424424244242442824242422424442424424248224424224244424244242442424824242422424442424424244242482424244424442244444442444424444224442244444442444424444242442424844424444284424244242442424822442444428442424424244242482244244442844242442424822442444424444242442424424248444244442444424244242442424822442444424444242442424424248224424444244442442424428444244442484244242442424428224424444248424424244242442822442444424842244224422244244422444224482244224244424224442284224242242444242244422842242422424442422444228422424442422444444422424224244424224442244444442242422424442422444224444444224242242444242244422444444422424442422444444422424224244424224442244444442242422424442422444224444444224242242444242244422444444424442444242442424824242444428442442424428444244442484244242442424428242424444248424424244242442824242444424842442424428242424444244442442424424244284442444424444244242442424428242424444244442442424424244282424244442444424424244282424244442444424424244242442844424444244442442424424244282424244442444424424244242442824242444424444242424242242444242442424428444224242242444242442424424244284442422424442424424248444242242422424442424424244242484442422424228424242442424844424224242242422842424244242442424844424224242242422842424244242442424844424224242242422842424244242442424844424224242284242424424248444242242422424228424242442424424248444242242422424228424242442424424248444242242422424228424242442424424248444244428422844842484248422842284248424842824282428442844282428242844284428242824284428442824282428442844282428242844284428242824284428442824282428442844282428242844284428242824284428442824282428442844282428242844284424242424224244424244242442824242242422424442424424244242442824242422424228424244242824242242422424228222424424282424224242242422822242442428242422424442424424248224424224244424244242442424824242422424442424424244242482424242242422824424244242482244242242422424228424242442424424248224424224242242422822242424424244242482424242242422424228222424244242442424824242444244422444444424444244442244422444444424444244442424424248444244442844242442424424248224424444284424244242442424822442444428442442424428444244442484244242442424428224424444248424424244242442822442444424842442424428242424444244442442424424244284442444424444244242442424428224424444244442442424424244282244244442444424242424224244424244242442824242242422424442424424244242442824242422424228424244242824242242422424228222424424282424224242242422822242442428242422424228244244242442824242422424224242284242442424424244282244242242422424228222424424244242442824242422424224242282224244242442424428242424224244424244242482244242242444242442424424248242424224244424244242442424824242444244422444444424444244442244422444444424444244442424424248444244442844242442424424248224424444284424244242442424822442444428442424424248224424444244442424424244242484442444424444242442424424248224424444244442424424244242482244244442444424424244284442444424842442424424244282244244442484244242442424428224424444248424842482424824248224842424824828222422444442242422442442442442244424424422444244244224224442442442242242242242422842284484484282422844284428442844824248422844844284428442244442284484428442844442284228422842824228422242442424242424244442224244242424242424444222424424242424444224422822242224222424422442282224222424422442282228422422422422222822482822822242824444448422442444282444224422444444844244248244484442442824444844244244282444444444844424424428244444444484424424424824448444244244282444484424424428244444444484442442442824444444448442442442482444844424424428244448442442442824444444448444244244282444444444842822228222422284422822822428242824228428222822282428428242822282228222822484282428222822282228224842824282228248224822482444244422444224442244422482422444442844224442244422444224824444284422444224442284244442844242442424424244224824444248424244242442424422482444424842424424244228424444248424424244242442422482444424482442424424224824444244824244242424242424242424224822482224842484248428424482424824248488248222248424844422224428222424824248242484448222484248242482424824248448422248222484482242482424824842242482248222484248424822428222484224842248422484242824248448244824242424244844828428824484844884448284288244848448844482842882448484488444828824484884448288244848844482882448488484284284488448288244848844482882448488444828824484884842842844844448288244848844482882448488444828824484884444884844824482882448248424484448488244828844484882448288444848824482884448488244828844484882448288444848824482884448488244828844484882448288444848824422442224424442444224242242422244224424442444224422282228222824284282428222822282428428242822282228222822484282428222822282228224842824282228248224822482444244422444224442244422482444428442244422444224442248244442844224442244422842444428442424424244242442248244442484242442424424244224824444248424244242442284244442484244242442424424224824444244824424244242248244442448242484248422484224842824422484444284424244242442424428224444428442424424244242442822444442844242442424424228444424444282842442424424244284444442444424444284424244242442424428224444424444244442824442442424424244282244444244442444428244442424424284444442484244242442424424282244444248424424244242442428224444424842444224444444244442482444442244422444444424444244442482444248242482424824248224484224844822448224482244824224842482424824248242482484224248244224422244222442428424424244242282244222442224422444284424424244242442244242482224422244222442222442822244222442444244422424224242848428428448448428428448448428428448448428428448448428428448448428428448448428428448884284284484484284284484484284284484484284284484484284284484484284284484484284284484444424442244422444222484444244442828244422444224442844444424444244442844224442244422444282244444244442444428244244422444224442822444442444424444282444244242442844444428442424424244242442822444442844242442424424244282244444284424424244242844444424842442424424244242822444442484244242442424424282244444248424442244444442444424824444422444224444444244442444424824442424242242422424224242284442428242242422424228444242824242242422424224228442442428242242422422844244242824442842284228424842484228422842484248422842284248424842284228424842484228422842484248422842284248424842284228424842484228422842484248428242824284428442824282428442844282428242844284428422844842484248422842284248424